home *** CD-ROM | disk | FTP | other *** search
- Frequently Asked Questions (FAQS);faqs.524
-
-
- #
- set in [open [concat "|/usr/bin/grep $site $files"] r]
-
- while {[gets $in line]>-1} {
- puts stderr $line
- }
- catch {close $in}
- }
-
- One thing: the matching strings are _not_ returned in directory order.
-
- But what if I want to check the return code AND use the output of
- the command? kennykb@dssv01.crd.ge.com (Kevin B. Kenny) writes:
-
- if [catch {exec ls} data] {
- # The exec got an error, and $errorCode has its termination status
- } else {
- # The exec succeeded
- }
- # In any case, `data' contains all the output from the child process.
-
- Note that Karl Lehenbauer adds that errorCode will be a list containing
- three elements, the string "CHILDSTATUS", the process ID of the child,
- and the exit status of the child.
-
- Subject: -Q8e- merge extended Tcl into other programs such as wish or expect?
-
- A8e. The latest version of extended TCL, tclX 6.2B, has been enhanced to
- make it easier to incorporate into applications.
-
- Subject: -Q8f- delete a procedure from within a script?
-
- A8f. rename procedureName ""
-
- Subject: -Q8g- get parray to recognize an array variable I have created
- via upvar?
-
- A8g. Right now (June, 1992) upvar doesn't allow you to attach to an
- individual element of an array. This is considered a bug by
- Mr. Ousterhout and has been place on a bug list.
-
- Subject: -Q8h- get more than 7 digits of double precision ?
-
- A8h. Modify the tclExpr.c module to use %lf instead of %g.
-
- Subject: -Q8i- grab the command line whenever a non-built-in call is made?
-
- A8i. The procedure "unknown" is called automatically with arguments
- containing the command and its arguments for any command that couldn't be
- found. In fact, Tcl and Extended Tcl use this feature to provide demand
- loaded commands, and even entire libraries.
-
- So by modifying the unknown procedure you can provide your own extended
- functionality, or even remove the demand loading capability if you so
- desire.
-
- ------------------------------
- Subject: -9- How, in Tk, can I XXX:
-
- Subject: -Q9a- get my wish application to execute - I just get a
- wish prompt! Or I just get error msgs about permission
- denied, not found, etc.
-
- A9a. Most systems require a full pathname to the interpreter. So you cannot
- start a wish script out as
- #! wish -f
-
- Likewise, many Unix systems have a maximum length of characters that you can
- put on a #! line. If you exceed this, you do not get the behaviour you
- expect. So do not try to put something like:
-
- #! /projects/somethingbig/bin/sun4/wish -f
-
- followed by your wish code. Keep the lines short - under 30 characters is
- recommended.
-
- Subject: -Q9b- get an application to also use libXt?
-
- A9b. Tk2.1 and Xt have different X connections, and XtAppNextEvent will
- block is there is nothing coming from the X connection. One way
- of fixing this is get the connection number of Tk using
-
- ConnectionNumber(Tk_Display(tk_window));
-
- and using XtAddInput to register this with the Xt event handler. The
- callback procedure for XtAddInput wrapper procedure that runs
- Tk_OneEvent(1). There might be problems with Tk file sources which
- aren't registered with Xt.
-
- Thanks to joe@astro.as.utexas.edu (Joe Wang) for this information.
-
- Subject: -Q9c- ,using a machine with less than 8 bit color, run?
-
- A9c. Tk doesn't behave very well with less than 8-bit color screens. To
- try to use it, find all the places in the Tk/wish source where
- DefaultDepthOfScreen is invoked to test the number of bit-planes. Change all
- of these to pretend there is just 1 bit-plane, or call a procedure which
- monitors a Tcl variable so that it is configurable, and you should be okay.
-
- Another alternative is to see if the server you are using has alternative
- visual / color models, such as static visual, etc. One of the alternatives
- may allow Tk to work better.
-
- Thanks to "Nathaniel Borenstein" <nsb@thumper.bellcore.com> for this info!
-
- Subject: -Q9d- set X11 resources for a wish application in an app-defaults file?
-
- A9d. Read the documentation for the option command.
- Then you should consider something like the following - assume the program
- name is xwf.
-
- The following are two general purpose functions to put into a library:
-
- # envVal envValName
- # Looks up the envValName environment variable and returns its
- # value, or {} if it does not exists
- proc envVal {envValName} {
- global env
- if [info exists env($envValName)] {return $env($envValName)} {return {}}
- }
-
- # loadAppDefaults classNameList ?priority?
- # Searches for the app-default files corresponding to classNames in
- # the order specified by X Toolkit Intrinsics, and loads them with
- # the priority specified (default: startupFile).
- proc loadAppDefaults {classNameList {priority startupFile}} {
- set filepath "[split [envVal XUSERFILESEARCHPATH] :] \
- [envVal XAPPLRESDIR] \
- [split [envVal XFILESEARCHPATH] :] \
- /usr/lib/X11"
- foreach i $classNameList {
- foreach j $filepath {
- if {[file exists $j/$i]} {
- option readfile $j/$i $priority; break
- }
- }
- }
- }
-
- # Now, here is what you would put into xwf:
-
- option add Tk.BoldFont "*-lucida sans-Bold-R-Normal-*-100-*" widgetDefault
- loadAppDefaults {xwf XWF} userDefault
-
- This sets a program default, then load any defaults specified in the user's
- default resources and finally any site or general app-defaults resource.
- Of course, you would want to add some xwf command line handling to allow
- the user to override things at execution time.
-
- Subject: -Q9e- change the X11 cursor?
-
- A9e. Here is a tip from mgc@cray.com (M. G. Christenson).
-
- Look at /usr/include/X11/cursorfont.h for a list of available cursors.
- You can use the names in there by removing the 'XC_'.
-
- Here's a little proc I use to make my entire application go 'busy'
- while it's doing something. Just call it with the commands you want to
- execute, and the watch cursor will be displayed for the time it takes
- the commands to complete. Note that any new windows will have their
- normal cursor.
-
- proc busy {cmds} {
- global errorInfo
-
- set busy {.app .root}
- set list [winfo children .]
- while {$list != ""} {
- set next {}
- foreach w $list {
- set class [winfo class $w]
- set cursor [lindex [$w config -cursor] 4]
- if {[winfo toplevel $w] == $w || $cursor != ""} {
- lappend busy [list $w $cursor]
- }
- set next [concat $next [winfo children $w]]
- }
- set list $next
- }
-
- foreach w $busy {
- catch {[lindex $w 0] config -cursor watch}
- }
-
- update idletasks
-
- set error [catch {uplevel eval [list $cmds]} result]
- set ei $errorInfo
-
- foreach w $busy {
- catch {[lindex $w 0] config -cursor [lindex $w 1]}
- }
-
- if $error {
- error $result $ei
- } else {
- return $result
- }
- }
-
- Subject: -Q9f- raise or lower a window?
-
- A9f. This is on the (semi-infinite) list of things to be done in the future.
- If you have the time, please go ahead and add it and submit the code and all
- will be grateful.
-
- Subject: -Q9g- re-map a withdrawn window id?
-
- A9g. Use wm deiconify <windowid>.
-
- Subject: -Q9h- specify bitmap patterns on the command line instead of as
- a file name?
-
- A9h. You can not, at least as of June, 1992.
-
- Subject: -Q9i- change the default class bindings?
-
- A9i. All default class bindings for Tk widgets are initialized in
- $tk_library/tk.tcl. Use this file as a guide to implement new
- bindings. For instance, the following code duplicates Button 1's
- drag-select facility in Button 3 for all listboxes:
-
- bind Listbox <3> {%W select from [%W nearest %y]}
- bind Listbox <B3-Motion> {%W select to [%W nearest %y]}
-
- Subject: -Q9j- delete a binding?
-
- A9j. Give an empty-string command to the "bind" invocation. For
- example, to disable the Delete key in all entry fields:
-
- bind Entry <Delete> {}
-
- Subject: -Q9k- change a binding while it is being executed?
-
- A9k. As of June, 1992, this was not a safe thing to do in Tk. It was
- put on the bug list by John Ousterhout to be fixed in a future version.
-
- The solution for now is not to change the bindings, but to change
- something in the code they execute. For example, keep a state variable
- that indicates which binding you'd like, but always have the binding
- call a given procedure. Then that procedure checks the variable and
- executes one piece of code or another. Or, you could just make the
- binding's command "eval $cmd" and then change the variable "cmd"
- depending on your application's state.
-
- Subject: -Q9l- bind the arrow key on my Sun keyboard?
-
- A9l. You have to call it <Left> rather than <R10>. Under X11, keys are
- referred to by their keysym. One can use either xmodmap -pk or the xev
- program to determine what the keysym a particular key on a keyboard is
- currently generating.
-
- If the keysym that is being used is not known by Tk, you may have to edit
- it's ks_names.h file. There is a note in this file that indicates that
- one should not edit it - but this is where the keysym must be for it to
- be recognized.
-
- Thanks to Wayne Christopher <faustus@ygdrasil.CS.Berkeley.EDU> for this
- note.
-
- Subject: -Q9m- resize a listbox?
-
- A9m. Use wm min/maxsize - in a uniform manner. Here is a resizable listbox:
-
- #!/usr/local/bin/wish -f
- wm minsize . 20 20
- wm maxsize . 1152 900
- pack append . [listbox .l -borderwidth 2 -relief raised] {expand fill}
-
- Doing the same with the text widget brings its resizing under control too.
-
- Thanks to "John C Ellson" <ellson@ontap.att.com).
-
- Subject: -Q9n- select two items that are not adjacent in the listbox at
- one time?
-
- A9n. You can't. Build your own listbox using boxes and text on a canvas.
- Then you will be able to select non-contiguous entries.
-
- Subject: -Q9o- select items in more than one tk listbox at a time?
-
- A9o. The default for tk's listbox widget exports its selection as the
- X selection. There can only be one of these at a time.
-
- To turn of this behavior in tk, use the -exportselection false when
- you create the listbox. Or, use the
-
- option add *Listbox.exportselection false
-
- command in the beginning of your script.
-
- Thanks to David Herron <david@twg.com> for this tip.
-
- Subject: -Q9p- fill a canvas which is bounded by lines as opposed to a
- shape like a polygon, oval, etc.?
-
- A9p. No, you have to at least use a polygon if you want to fill an area
- bounded by some lines.
-
- Subject: -Q9q- create a scrollable window of buttons?
-
- A9q. There are at least two ways to do this. First, there is a hypertext
- widget that one can get from the Barkley User Contributed Code Archive which
- provides such a facility. And here is some sample code from
- "Michael Moore" <mdm@stegosaur.cis.ohio-state.edu> which shows a way to
- do this using just Tk.
-
- #! /bin/wish -f
- #
- # This demonstrates how to create a scrollable canvas with mutliple
- # buttons.
- #
- # Author : Michael Moore
- # Date : November 17, 1992
- #
-
- #
- # This procedure obtains all the items with the tag "active"
- # and prints out their ids.
-
- proc multi_action {} {
- set list [.frame.canvas find withtag "active"]
- puts stdout "Active Item Ids : "
- foreach item $list {
- puts stdout $item
- }
- }
-
- #
- # This simulates the toggling of a command button...
- # Note that it only works on a color display as is right now
- # but the principle is the same for b&w screens.
- #
- proc multi_activate {num id} {
-
- set tags [.frame.canvas gettags $id]
- if {[lsearch $tags "active"] != -1} {
- .frame.canvas dtag $id "active"
- .frame.canvas.button$num configure \
- -background "#060" \
- -activebackground "#080"
- } else {
- .frame.canvas addtag "active" withtag $id
- .frame.canvas.button$num configure \
- -background "#600" \
- -activebackground "#800"
- }
- }
-
- proc setup {} {
- frame .frame
-
- scrollbar .frame.scroll \
- -command ".frame.canvas yview" \
- -relief raised
-
- canvas .frame.canvas \
- -yscroll ".frame.scroll set" \
- -scrollregion {0 0 0 650} \
- -relief raised \
- -confine false \
- -scrollincrement 25
-
- pack append .frame \
- .frame.scroll {left frame center filly} \
- .frame.canvas {left frame center fillx filly}
-
- pack append .\
- .frame {left frame center fillx filly}
-
- button .frame.canvas.button$i \
- -relief raised \
- -text "Action" \
- -command "multi_action"
- .frame.canvas create window 1 25 \
- -anchor w \
- -window .frame.canvas.action
- for {set i 2} {$i < 26} {incr i} {
- button .frame.canvas.button$i \
- -relief raised \
- -background "#060" \
- -foreground wheat \
- -activebackground "#080" \
- -activeforeground wheat \
- -text "Button $i"
- set id [.frame.canvas create window 1 [expr $i*25] \
- -anchor w \
- -window .frame.canvas.button$i]
- .frame.canvas.button$i configure \
- -command "multi_activate $i $id"
- }
- }
-
- setup
- --
- Larry W. Virden UUCP: osu-cis!chemabs!lvirden
- Same Mbox: BITNET: lvirden@cas INET: lvirden@cas.org
- Personal: 674 Falls Place, Reynoldsburg, OH 43068-1614
- --
- Larry W. Virden UUCP: osu-cis!chemabs!lvirden
- Same Mbox: BITNET: lvirden@cas INET: lvirden@cas.org
- Personal: 674 Falls Place, Reynoldsburg, OH 43068-1614
- Xref: bloom-picayune.mit.edu comp.lang.tcl:2076 news.answers:4540
- Newsgroups: comp.lang.tcl,news.answers
- Path: bloom-picayune.mit.edu!enterpoop.mit.edu!spool.mu.edu!caen!malgudi.oar.net!chemabs!lvirden
- From: lvirden@cas.org (Larry W. Virden)
- Subject: comp.lang.tcl Frequently Asked Questions (3/3)
- (Last updated: November 8, 1992)
- Message-ID: <tcl.p3_724079551@cas.org>
- Followup-To: comp.lang.tcl
- Summary: A regular posting of the comp.lang.tcl Frequently Asked Questions
- (FAQ) and their answers. This is the third of three parts.
- Originator: lwv26@lwv26aws
- Keywords: tcl, expect, extended tcl, wish, tk
- Sender: lvirden@cas.org
- Supersedes: <tcl.p3_721227419@cas.org>
- Reply-To: lvirden@cas.org (Larry W. Virden)
- Organization: Chemical Abstracts Service
- References: <tcl.p2_724079551@cas.org>
- Date: Fri, 11 Dec 1992 13:13:52 GMT
- Approved: news-answers-request@MIT.Edu
- Expires: Sun, 24 Jan 1993 13:12:31 GMT
- Lines: 786
-
- Archive-name: tcl-faq/part3
- Version: 2.6
- Last-modified: November 8, 1992
-
- Index of questions:
-
- 9. Where can I get these packages?
- a. Retrieving Tcl and Tk
- b. Accessing the Tcl/Tk User Contributions Archive
- c. Expect available via e-mail.
- d. tcl-mode.el
-
- 10. What are some examples of applications using Tcl and/or Tk?
- o Alpha
- o arTCLs
- o BOS
- o browse.tcl
- o BYO
- o calc.tk
- o coloredit
- o dostcl
- o Expect
- o expecTerm
- o Extended Tcl
- o fn and ForumNet
- o hp-tcl-cdplay
- o js tools
- o Libsearch
- o MacOS Tcl
- o Modules
- o MS-DOS Tcl
- o Mx
- o Point
- o Picasso
- o reversi
- o Roger's Interface Language (RIL)
- o smaillog.tcl
- o ServiceMail(TM) Toolkit
- o Tcl
- o tclbot
- o tcltt
- o tickle
- o Tk
- o tk WWW interface
- o tupact.tcl
- o Tx
- o unix.tk
- o wafe
- o workman
- o Xdig
- o xf
-
- 11. Since Tcl/Tk appear to be extensible, are there any common extensions?
- o Calc_Object
- o deck.tk
- o Drag and Drop
- o SunOS dld package
- o graph
- o lisp2wish
- o Mxedit
- o parseargs.tcl
- o Photo widget
- o Pixmap modifications
- o Postgres extensions
- o showproc.tcl
- o SIPP extensions
- o sybtcl
- o tclprof
- o tclRawTCP
- o tclsql
- o tclsockets
- o tclTCP
- o tclvogle
- o tclcompare
- o tclConnect
- o tcl_curses
- o tcl_debugger
- o tcl_snmp
- o tcl_streams
- o tclX dynamic library patches
- o tclX / Tk merge
- o tcpConnect
- o tk Bell and Cutbuffer patches
- o Tk Emacs
- o tkFScale
- o tk-mod.shar
- o tkText (Tk 1.3 compatible)
- o tkText (Tk 2.0 compatible)
- o wmstuff
- o Xpm support
-
- 12. Are there any commercial packages which use Tcl/Tk?
-
- End of FAQ Index
-
- --------------------------------------
- Subject: -9- Where can I get these packages?
-
- The "home site" for Tcl on the Internet is sprite.berkeley.edu.
- Sprite is an experimental research machine whose IP servers
- occasionally flake out. If you find that sprite is refusing
- connections, send mail to "root@sprite.berkeley.edu", wait a few
- hours, and try again.
-
- Tcl and Extended Tcl were posted to comp.sources.misc, appearing
- November 14th, 1991, and can be found at most comp.sources.misc
- archive sites in the tcl and tclx directories.
-
- a. Tcl - available on sprite.berkeley.edu
- b. Tk - available on sprite.berkeley.edu
- c. Extended Tcl - available on sprite.berkeley.edu and barkley.berkeley.edu
-
- The IP address for barkley.berkeley.edu is 128.32.142.237 .
- The IP address for sprite.berkeley.edu is ??.??.??.?? .
-
- Another site that provides a mirror of all the tcl/tk submissions - to both
- sprite and barkley - is sunsite.unc.edu. Check in their /pub/languages/tcl
- directory.
-
- In Europe, use ftp.funet.fi:/pub/languages/tcl. It should mirror both
- sprite and barkley once a week.
-
- From: ouster@sprite.Berkeley.EDU (John Ousterhout)
- Newsgroups: comp.lang.tcl
- Subject: Obtaining Tcl/Tk sources
-
- For people new to the Tcl/Tk community, here is information on how
- to obtain Tcl and Tk sources. The information below describes what
- I distribute; other information is available from other machines
- also, such as barkley.berkeley.edu .
-
- --------------------------------------
- Subject: -9a- Retrieving Tcl and Tk
-
- The sources and documentation for the Tcl command
- language library, for the Tk toolkit, and for a few Tcl-based
- applications, are in the public FTP area on sprite.berkeley.edu.
- All of these files are in the "tcl" subdirectory of the FTP area.
- Here is a catalog of what's available. Most of the files are
- compressed tar files ("xxx.tar.Z"). There is some overlap
- between the contents of the various packages.
-
- tk2.3.tar.Z - This is the latest release of the Tk toolkit, released
- in August 1992. It includes a complete copy of the
- Tcl 6.4 release (the version of Tcl with which it is
- compatible) plus a simple windowing shell called
- "wish". If you retrieve this file you don't need to
- retrieve Tcl separately.
-
- tk2.3.patch.Z - A patch file to upgrade from the 2.2 release of Tk
- to 2.3. Invoke patch in the top-level Tk directory
- with the "-p" switch and an uncompressed version of
- this file, e.g. "patch -p < tk2.3.patch".
-
- tcl6.4.tar.Z - This is the newest release of the Tcl library.
- It became available in August 1992. This package
- includes only the Tcl library and its documentation,
- plus a simple main program for testing.
-
- tcl6.4.patch.Z - A patch file to upgrade from the 6.3 release of Tcl
- to 6.4. Invoke patch in the top-level Tcl directory
- with the "-p" switch and an uncompressed version of
- this file, e.g. "patch -p < tcl6.4.patch".
-
- tclX6.4c-p1.tar.Z - Extended Tcl (or NeoSoft Tcl), created by Mark
- Diekhans and Karl Lehenbauer, which adds a number
- of useful facilities to the base Tcl release.
- Among the things in Extended Tcl are a Tcl shell,
- many new commands for things like UNIX kernel
- call access and math library routines, and an
- on-line help facility. This file is based on Tcl
- 6.4 and also works with Tk 2.3.
-
- tclX6.4c.patch1.Z - Patches to update tclX6.4c.
-
- mx.tar.Z - Sources and documentation for a mouse-based text
- editor (mx) and terminal emulator (tx) based on
- Tcl. This is a very old release: it uses an old
- version of Tcl (which is included) and doesn't
- even use Tk; it uses an ancient toolkit called
- "Sx". These tools will eventually be replaced
- with new tools based on Tk and the newest Tcl.
-
- mx-2.5.tar.Z - Newer version of mx (see above) that uses the
- standard X selection mechanism rather than the
- homegrown mechanism used by previous versions.
- Version 2.5 is not backwards compatible with
- previous versions (you can't cut and paste between
- the two). Still uses sx and an old version of
- Tcl (both of which are included).
-
- mx-2.5.patch.Z - Patch file for converting mx 2.4 sources into 2.5.
- Invoke patch in the top-level mx directory
- with the "-p1" switch and an uncompressed version of
- this file, e.g. "patch -p1 < mx-2.5.patch".
-
- book.p1.ps.Z Compressed Postscript for a draft of the first part
- of an upcoming book on Tcl and Tk to be published in
- 1993 by Addison-Wesley. This part of the book
- describes the Tcl language and how to write scripts
- in it. About 130 pages in length.
-
- tclUsenix90.ps - Postscript for a paper on Tcl that appeared in the
- Winter 1990 USENIX Conference. This paper is also
- included in the Tcl and Tk distributions.
-
- tkUsenix91.ps - Postscript for a paper on Tk that appeared in the
- Winter 1991 USENIX Conference. This paper is also
- included in the Tk distribution.
-
- tkF10.ps - Postscript for Figure 10 of the Tk paper.
-
- talk1.ps - Postscript for viewgraphs from first of five talks
- in the Tcl tutorial at the 1992 X Conference (the
- same talk was also given at the 1992 USENIX Winter
- Conference). This talk gives an overview of Tcl
- and Tk.
-
- talk2.ps - Postscript for viewgraphs from second of five talks
- in the Tcl tutorial at the 1992 X Conference. This
- talk describes how to write scripts in the Tcl
- language.
-
- talk3.ps - Postscript for viewgraphs from third of five talks
- in the Tcl tutorial at the 1992 X Conference. This
- talk describes how to program the Tk toolkit using
- Tcl scripts.
-
- talk4.ps - Postscript for viewgraphs from fourth of five talks
- in the Tcl tutorial at the 1992 X Conference. This
- talk describes how to write new Tcl-based applications
- in C.
-
- talk5.ps - Postscript for viewgraphs from last of five talks
- in the Tcl tutorial at the 1992 X Conference. This
- talk describes how to write implement widgets in C
- using the Tk library. This talk uses a simple
- "square" widget as an example; the code for the
- widget is in tkSquare.c.
-
- tkSquare.c - Sample code for use in conjunction with talk5.ps.
-
- In addition, there may be older releases of some or all of the above
- files; look for files with earlier release numbers.
-
-
- To retrieve any or all of these packages, use anonymous FTP to
- sprite.berkeley.edu (Internet address 128.32.150.27). Use user
- "anonymous"; when asked for a password, type your login name. Then
- retrieve the relevant file(s) with the commands like the following:
- type image (try "type binary" if this command is rejected)
- cd tcl
- get tcl6.4.tar.Z
- get tk2.3.tar.Z
-
- Be sure to retrieve files in image mode (type "type image" to FTP)
- in order to make sure that you don't lose bits.
-
- Any file with a .Z extension is a compressed file, which means you must
- use the "uncompress" program to get back a normal file. For example, for
- the file tk2.3.tar.Z, you should type
-
- uncompress tk2.3.tar.Z
-
- once you've retrieved the file. This will produce a file named "tk2.3.tar".
- Then you will need to use tar to extract the members. Typically one
- would use a command such as:
-
- tar xv tk2.3.tar
-
- to extract the pieces.
-
- Each of the releases has a README file in the top-level directory that
- describes how to compile the release, where to find documentation, etc.
-
- Questions or problems about any of these distributions should be directed
- to John Ousterhout (ouster@cs.berkeley.edu).
-
- If you don't have access to Sprite, you can also retrieve some or
- all of the above files from other FTP repositories. Here is a
- sampler of machines that store some or all of the Tcl/Tk information,
- plus the directories in which to check:
-
- ftp.uu.net: languages/tcl/*
- export.lcs.mit.edu: contrib/tk*
- barkley.berkeley.edu: tcl/*
-
- --------------------------------------
- Subject: -9b- Accessing the Tcl/Tk User Contributions Archive
-
- Contributions to the Tcl/Tk Contrib Archive are most welcome --
- please upload them to:
-
- barkley.berkeley.edu:/incoming [128.32.142.237]
-
- send the archive maintainer <tcl-archive@barkley.berkeley.edu> a note stating
- the names of the files you uploaded and a brief description of the whole
- thing.
-
- Barkley is the central file server for a moderate-size cluster, so
- please try to refrain from FTPing stuff between 9am and 5pm PST (GMT
- -0800). No mail-archive service is planned as yet -- users without
- FTP capability should use one of the following mail-based FTP services
- (send mail to the appropriate address with "help" in the body):
-
- WARNING! The archive maintainer will NOT be automatically archiving anything
- posted to comp.lang.tcl or previously to the mailing list. So if you want
- your nifty porting instructions for getting Tcl up on your Seiko wrist watch
- or your pen computer to be saved for others benefit, be sure to ftp them into
- the archive.
-
- All contributions should be placed in barkley's ~ftp/incoming
- subdirectory. Please send tcl-archive@barkley.berkeley.edu a short
- mail message stating the filename(s) of your contribution and a brief
- description (for the Index). If you've posted some code to
- comp.lang.tcl or the Tcl mailing list, and you want it to be archived
- at this site, please deposit it in ~ftp/incoming or mail it in a
- suitable form (preferably uuencoded compressed tar file, but a shar
- file's OK) to tcl-archive@barkley.berkeley.edu.
-
- Note: I have noticed that some authors prefer to use plain names rather than
- version level type names. This means that you should a) make note of when
- you get a package, and b) check the archive occasionally to see if a newer
- version of the package has appeared.
-
- -------------------------------
- Subject: -9c- Expect available via e-mail.
-
- Besides being available via ftp, expect can also be received by email
- by sending the message "send pub/expect/expect.shar.Z" to
- library@cme.nist.gov .
-
- -------------------------------
- Subject: -9d- tcl-mode.el
-
- "Sean Levy" <snl+@cs.cmu.edu> has hacked a version of Emacs's C mode into
- a tcl-mode.el. He mentions that you must use semi-colons at the end
- of each statement to get indentation to work right, but he found that
- easier than doing without.
-
- The code is on sambar.ndim.edrc.cmu.edu (128.2.214.236) under
- /afs/cs/user/snl/public/tcl-mode.el.Z (don't forget binary mode) as well
- as barkley.berkeley.edu.
-
- "Julian Anderson" <jules@kauri.vuw.ac.nz> was also working on an Emacs Tcl
- minor mode to fundamental.
-
- "Chris Lindblad" <cjl@lcs.mit.edu> has contributed tcl.el, a Tcl mode for
- GNU emacs, to barkley.berkeley.edu.
-
- ------------------------------
- Subject: -10- What are some examples of applications using Tcl and Tk?
-
- What: Alpha (Alpha 5.0)
- Where: cs.rice.edu
- Description: Macintosh System 7.0 shareware ($25) Tcl programmable editor.
- Contact: pete@cs.rice.edu
-
- What: arTCLs (artcls.tar.Z)
- Where: barkley.berkeley.edu
- Description: a Wish-based USENET news reader
- Contact: mh@awds.imsd.contel.com (Mike Hoegeman)
-
- What: BOS (bos-1.31.tar.Z)
- Where: barkley.berkeley.edu,monch.edrc.cmu.edu
- Description: The Basic Object System; SELF-like objects implemented in TCL.
- This is also an extension to Tcl.
- Contact: snl+bos-requests@cmu.edu (Admin. requests for BOS mailing list)
- snl+box@cmu.edu (BOS mailing list)
-
- What: browse.tcl
- Where: alt.sources
- Description: Directory browser w/Tcl
- Contact: peter@taronga.com (Peter da Silva)
-
- What: BYO (byo_tk2.1_v0.7.tar.Z, byo_v0.7_patch1)
- Where: barkley.berkeley.edu
- Description: A graphical User Interface Builder for Wish
- Contact: byo@comp.vuw.ac.nz (BYO Development Team)
-
- What: calc.tk
- Where: barkley.berkeley.edu
- Description: a simple calculator.
- Contact: david@twg.com (David Herron)
-
- What: coloredit (coloredit.tk)
- Where: barkley.berkeley.edu
- Description: Tk script to edit colors
- Contact: "Sam Shen" <sls@aero.org>
-
- What: dostcl (dostcl60.tar.Z/dostcl.zoo)
- Where: barkley.berkeley.edu
- Description: Experimental MS-DOS Tcl 6.0a port
- Contact: "Karl Lehenbauer" <karl@NeoSoft.com>
-
- What: Expect
- Where: ftp.cme.nist.gov:/pub/expect/expect.shar.Z
- Description: a scripting language to talk to interactive programs like ftp,
- telnet, fsck, and others that cannot be automated from a shell script
- Contact: libes@cme.nist.gov (Don Libes)
-
- What: expecTerm (expecTerm1.0beta.tar.Z)
- Where: ceylon.gte.com:pub/expecterm/expecTerm1.0beta.tar.Z,barkley.berkeley.edu
- Description: expect with terminal emulation
- Contact: matheus@gte.com (Christopher J. Matheus) and
- weissman@get.com (Mark D. Weissman)
-
- What: Extended Tcl (tclX6.4c.tar.Z)
- Where: barkley.berkeley.edu, sprite.berkeley.edu
- Description: an essential package of extensions for Tcl, compatible with
- Tcl 6.4 and Tk 2.3.
- Contacts: markd@grizzly.com (Mark Diekhans) and
- karl@neosoft.com (Karl Lehenbauer)
-